home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Source Code / C / Applications / Moscow ML 1.42 / examples / calc / Makefile < prev    next >
Encoding:
Makefile  |  1997-08-18  |  1001 b   |  62 lines  |  [TEXT/R*ch]

  1. # Unix makefile for calc example
  2.  
  3. MOSMLHOME=${HOME}/mosml
  4. MOSMLTOOLS=camlrunm $(MOSMLHOME)/tools
  5. MOSMLLEX=${MOSMLHOME}/bin/mosmllex
  6. MOSMLYACC=${MOSMLHOME}/bin/mosmlyac
  7.  
  8. MOSMLC=mosmlc -c
  9. MOSMLL=mosmlc
  10.  
  11. # Unix
  12. REMOVE=rm -f
  13. MOVE=mv
  14. EXEFILE=
  15.  
  16. # DOS
  17. #REMOVE=del
  18. #MOVE=move
  19. #EXEFILE=.exe
  20.  
  21. .SUFFIXES :
  22. .SUFFIXES : .sig .sml .ui .uo
  23.  
  24. OBJS=Parser.uo Lexer.uo calc.uo
  25.  
  26. all: calc
  27.  
  28. calc: $(OBJS)
  29.     $(MOSMLL) -o calc$(EXEFILE) calc.uo
  30.  
  31. Parser.sml Parser.sig: Parser.grm
  32.     $(MOSMLYACC) Parser.grm
  33.  
  34. Lexer.sml: Lexer.lex
  35.     $(MOSMLLEX) Lexer.lex
  36.  
  37. clean:
  38.     $(REMOVE) Makefile.bak
  39.     $(REMOVE) Parser.sig
  40.     $(REMOVE) Parser.sml
  41.     $(REMOVE) Lexer.sml
  42.     $(REMOVE) calc
  43.     $(REMOVE) *.ui
  44.     $(REMOVE) *.uo
  45.  
  46. .sig.ui:
  47.     $(MOSMLC) $<
  48.  
  49. .sml.uo:
  50.     $(MOSMLC) $<
  51.  
  52. depend: Lexer.sml Parser.sml Parser.sig
  53.     $(REMOVE) Makefile.bak
  54.     $(MOVE) Makefile Makefile.bak
  55.     $(MOSMLTOOLS)/cutdeps < Makefile.bak > Makefile
  56.     $(MOSMLTOOLS)/mosmldep >> Makefile
  57.  
  58. ### DO NOT DELETE THIS LINE
  59. Parser.uo: Parser.ui 
  60. calc.uo: Parser.ui Lexer.uo 
  61. Lexer.uo: Parser.ui 
  62.